package cn.iocoder.yudao.module.system.controller.admin.user.vo.scores;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDateTime;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 用户分数导出 Request VO，参数和 UserScoresPageReqVO 是一致的")
@Data
public class UserScoresExportReqVO {

    @Schema(description = "用户ID", example = "1024")
    private Long userId;

    @Schema(description = "用户名", example = "张三")
    private String username;

    @Schema(description = "省份", example = "山东")
    private String province;

    @Schema(description = "年级", example = "高三")
    private String grade;

    @Schema(description = "首选科目", example = "物理")
    private String firstSubject;

    @Schema(description = "次选科目", example = "化学")
    private String secondSubject;

    @Schema(description = "总分最小值", example = "500.0")
    private BigDecimal minScore;

    @Schema(description = "总分最大值", example = "700.0")
    private BigDecimal maxScore;

    @Schema(description = "用户类型", example = "物理类")
    private String typeName;

    @Schema(description = "考试年份", example = "2024")
    private Integer examYear;

    @Schema(description = "是否为当前使用的成绩记录", example = "true")
    private Boolean isCurrent;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}